package com.uinnova.springboot.demo.mongodb.dao.impl;

import com.uinnova.springboot.demo.mongodb.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Repository;

/**
 * @author 张攀钦
 * @date 2018-12-26-00:00
 *  Spring 给予了我们新的约定，在 Spring中只要定义一个 “接口名称+Impl” 的类并且提供与接口定义相同的 方法，
 *  Spring就会自动找到这个类对应的方法作为JPA接口定义的实现。
 */
@Repository
public class UserMongoImpl {
    @Autowired
    private MongoTemplate mongoTemplate;

    public User findUserFromName(String name) {
        return mongoTemplate.findOne(Query.query(Criteria.where("name").is(name)), User.class);
    }
}
